package javaStudy.字符串;

import java.util.Arrays;

public class 字符串 {
    public static void main(String[] args) {
        /**
         * 字符串的查找
         * charAt(int index)方法：返回index位置上字符，如果index为负数或者越界，抛出IndexOutOfBoundsException异常。
         * indexOf(String str)方法：返回str第一次出现的位置，没有返回-1。
         * contains(String str)方法：判断一个字符串中是否包含另一个字符串。
         * startsWith(String str)方法：判断前缀。
         * endsWith(String str)方法：判断后缀。
         */
        String str = "hello";
        System.out.println(str.charAt(2));// l
        System.out.println(str.indexOf("l"));// 2
        System.out.println(str.contains("el"));//true
        System.out.println(str.startsWith("he"));//true
        System.out.println(str.endsWith("he"));//false
        System.out.println("======================");

        /**
         * 字符串拆分与连接
         * split方法：将字符串以指定的格式全部拆分成字符串数组。
         * +号：将多个字符串连接成一个字符串。
         * join方法：静态方法，将多个字符串以指定的格式全部连接成一个字符串。
         * concat方法：将两个字符串连接成一个字符串。
         */
        String str1 = "hello,world";
        String str2 = "ab12cd34ef";
        System.out.println(Arrays.toString(str1.split(",")));// [hello, world]
        System.out.println(Arrays.toString(str2.split("\\d+")));// [ab, cd, ef]
        System.out.println(str1 + str2);// hello,worldab12cd34ef
        System.out.println(String.join(" ","Hello","World","!"));// Hello World !
        System.out.println(str1.concat(str2));// hello,worldab12cd34ef
        System.out.println("=================");


        /**
         * 字符串截取
         * substring(开始截取的下标, 开始不截取的下标)：截取子字符串。
         */
        String str3 = "hello world";
        System.out.println(str.substring(2));// llo world
        System.out.println(str.substring(2,5));// llo 左闭右开，不包括5
        System.out.println("================");


        StringBuilder sb = new StringBuilder("Hello");
        sb.append("WorldWaWa"); // HelloWorldWaWa
        sb.insert(0,"Li:"); // Li:HelloWorldWaWa
        sb.insert(8," "); // Li:Hello WorldWaWa
        sb.delete(14,sb.length()); // Li:Hello World
        System.out.println(sb.toString());
    }


}
